<?php
	function arrTojson($arr){
		if(is_array($arr)){
				$str=json_encode($arr,JSON_UNESCAPED_UNICODE);
				//$str=preg_replace("#\\\u([0-9a-f]{4}+)#ie", "iconv('UCS-2', 'UTF-8', pack('H4', '\\1'))", $str);
				return $str;
		}else{
				return false;			
		}
		
	}
	
	//获取json数据并转换成数组
	function G_DATA(){
		$str = file_get_contents("php://input");
		$arr=json_decode($str,true);
		
		 if(!is_array($arr)){
			//无数据
			$data['code']="E1000";
			$data['errmsg']=C('E1000');
			echo arrTojson($data);
			exit;
		 }else{
			return $arr;
		 }
		
	}
	//检查token是否存在
	//传递过来的是所有数据
	function checkToken($arr)
	{
		if(!array_key_exists('token',$arr))
		{
			return false;
			exit;
		}

		if(!timeTome($arr['token'])){
			error('E1010');
			exit;
		}
	}

	//检查token是否过期
	function timeTome($token)
	{
		$res = D('APP/Token') -> getTokenTime($token);
		if($res){
			return true;
		}else{
			return false;
		}
	}
	//成功时返回数据头
	function success($arr){
		$data['code']='0';
		$data['errmsg']='ok';
		$data['data']=$arr;
		echo str_replace("null",'""',arrTojson($data));
	}
	
	function error($errcode){
		$data['code']=$errcode;
		$data['errmsg']=C($errcode);
		echo arrTojson($data);
		exit;
	}

	//用户登录生成token
	function token()
	{
		$length = 64;
		// 密码字符集，可任意添加你需要的字符 
		$chars ='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'; 
		$token = ''; 
		for ( $i = 0; $i < $length; $i++ ) 
		{ 
		// 这里提供两种字符获取方式 
		// 第一种是使用 substr 截取$chars中的任意一位字符； 
		// 第二种是取字符数组 $chars 的任意元素 
		// $password .= substr($chars, mt_rand(0, strlen($chars) – 1), 1); 
		$token .= $chars[ mt_rand(0, strlen($chars) - 1) ]; 
		} 
		$data = md5($token);
		return $data; 

	}